package com.wenx.v3system.modular.platform.domain.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 平台登录结果DTO
 * 
 * @author wenx
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PlatformLoginResult {

    /**
     * 访问令牌
     */
    private String accessToken;

    /**
     * 刷新令牌
     */
    private String refreshToken;

    /**
     * 令牌类型
     */
    private String tokenType = "Bearer";

    /**
     * 过期时间（秒）
     */
    private Long expiresIn;

    /**
     * 用户信息
     */
    private PlatformUserDto user;

    /**
     * 用户权限列表
     */
    private List<String> permissions;

    /**
     * 用户菜单编码列表
     */
    private List<String> menuCodes;

    /**
     * 用户角色编码列表
     */
    private List<String> roleCodes;
} 